package com.europe.business.europebusiness.ui.net;
import com.europe.business.europebusiness.ui.bean.BaseBean;
import com.europe.business.europebusiness.ui.bean.CompanyBean1;
import com.europe.business.europebusiness.ui.bean.CompanyCategoryBean;
import com.europe.business.europebusiness.ui.bean.CompanySearchBean;
import com.europe.business.europebusiness.ui.bean.CountryBean;
import com.europe.business.europebusiness.ui.bean.ImproveEourpeBean;
import com.europe.business.europebusiness.ui.bean.JsonBean;
import com.europe.business.europebusiness.ui.bean.MainBusinessBean;
import com.europe.business.europebusiness.ui.bean.ProvinceBean;
import com.europe.business.europebusiness.ui.bean.Sector1Bean;
import com.europe.business.europebusiness.ui.bean.Sector2Bean;

import java.util.Map;

import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;

public interface ICompany {

    @GET("api/company/getCompanyCategory")
    public Call<CompanyCategoryBean> getCompanyCategory(@Query("pageNum") int pageNum, @Query("pageSize") int pageSize, @Query("language") String language);


    @GET("app/user/getProvinceList")
    public Call<ProvinceBean> getProvinceList(@Query("countryId") int countryId, @Query("pageNum") int pageNum, @Query("pageSize") int pageSize, @Query("language") String language);

    @GET("app/user/getCountryList")
    public Call<CountryBean> getCountryList(@Query("pageNum") int pageNum, @Query("pageSize") int pageSize, @Query("language") String language);

    @GET("api/company/searchCompanyName")
    public Call<CompanySearchBean> searchCompanyName(@Query("msg") String msg, @Query("page") int page, @Query("rows") int rows, @Query("language") String language);


    @GET("api/company/sector1List")
    public Call<Sector1Bean> sector1List(@Query("pageNum") int pageNum, @Query("pageSize") int pageSize, @Query("language") String language);

    @GET("api/company/sector2List")
    public Call<Sector2Bean> sector2List(@Query("sector1Id") String sector1Id , @Query("pageNum") int pageNum, @Query("pageSize") int pageSize, @Query("language") String language);

    @GET("api/company/getMainBusiness")
    public Call<MainBusinessBean> getMainBusiness(@Query("sector1Id") int sector1Id, @Query("sector2Id") int sector2Id, @Query("pageNum") int pageNum, @Query("pageSize") int pageSize, @Query("language") String language);

    @POST("app/user/improveEuropeCompany")
    public Call<JsonBean> improveEuropeCompany(@Body ImproveEourpeBean bean);

    @FormUrlEncoded
    @POST("app/user/improveEuropeCompany")
    public Call<JsonBean> improveEuropeCompany(@FieldMap Map<String, Object> fields);

    @FormUrlEncoded
    @POST("app/user/improveCompanyInformation")
    public Call<JsonBean> improveCompanyInformation(@FieldMap Map<String, Object> fields);

    @FormUrlEncoded
    @POST("app/user/improvePersonInformation")
    public Call<JsonBean> improvePersonInformation(@FieldMap Map<String, Object> fields);

    @POST("api/company/companyInfoNotToken")
    public Call<CompanyBean1> companyInfoNotToken(@Query("id") String id, @Query("language") String language);

    @POST("app/myself/addCollectCompany")
    public Call<BaseBean> addCollectCompany(@Query("companyId") String companyId,@Query("language") String language);

}
